//public class ThrowsCheckedExceptionTest {
//    public static void main(String[] args) {
//        System.out.println("上课.....");
//        try {
//            afterClass(); // 换到这里处理异常
//        } catch (InterruptedException e) {
//            e.printStackTrace();
//            System.out.println("准备提前上课");
//        }
//        System.out.println("上课.....");
//    }
//
//    public static void afterClass() throws InterruptedException {
//        for (int i = 10; i >= 1; i--) {
//            // sleep()有可能会抛出 InterruptedException 这个编译期异常
//            Thread.sleep(1000); // 本来应该在这里通过 try-catch 来处理异常
//            System.out.println("距离上课还有：" + i + "分钟");
//        }
//    }
//}

//import java.util.InputMismatchException;
//import java.util.Scanner;
//
//public class ThrowsCheckedExceptionTest {
//    public static void main(String[] args) {
//        Scanner input = new Scanner(System.in);
//        try {
//            System.out.print("请输入第一个整数：");
//            int a = input.nextInt();
//            System.out.print("请输入第二个整数：");
//            int b = input.nextInt();
//            int result = divide(a, b);
//            System.out.println(a + "/" + b + "=" + result);
//        } catch (ArithmeticException | InputMismatchException e) {
//            e.printStackTrace();
//        } finally {
//            input.close();
//        }
//    }
//
//    public static int divide(int a, int b) throws ArithmeticException {
//        return a / b;
//    }
//}

//public class ThrowsCheckedExceptionTest {
//    public static void main(String[] args) {
//        try {
//            method();
//        } catch (RuntimeException e) {
//            e.printStackTrace();
//        }
//    }
//
//    public static void method() throws RuntimeException {
//        int i = 10 / 0; // ArithmeticException
//        int[] array = new int[10];
//        array[100] = 10; // ArrayIndexOutOfBoundsException
//    }
//}